課程資訊
課程名稱
程式設計
Programming Design 
開課學期
109-2 
授課對象
管理學院  科技管理組  
授課教師
邱奕鵬 
課號
BA1009 
課程識別碼
701 20900 
班次
 
學分
3.0 
全/半年
半年 
必/選修
必帶 
上課時間
星期二6,7,8,9(13:20~17:20) 
上課地點
新402 
備註
本課程中文授課,使用英文教科書。星期二第89堂安排電腦實習
限本系所學生(含輔系、雙修生)
總人數上限:69人 
Ceiba 課程網頁
http://ceiba.ntu.edu.tw/1092BA1009_ 
課程簡介影片
 
核心能力關聯
核心能力與課程規劃關聯圖
課程大綱
為確保您我的權利,請尊重智慧財產權及不得非法影印
課程概述

Chapter 1: Introduction to Computers
Chapter 2: Introduction to C++ Programming
Chapter 3: Control Statements: Part I
Chapter 4: Control Statements: Part II
Chapter 5: Functions and Introduction to Recursion
Chapter 6: Arrays and Vectors
Chapter 7: Pointers
Chapter 8: Sequential-Access Files
Chapter 9: Classes
Chapter 10: Classes: A Deeper Look
Chapter 11: Operator Overloading
Chapter 12: Object-Oriented Programming: Inheritance
Chapter 13: Object-Oriented Programming: Polymorphism
Chapter 14: Templates
Chapter 15: Stream Input/Output

 

課程目標
Programming basics using C++ 
課程要求
 
預期每週課後學習時數
 
Office Hours
 
指定閱讀
C++ How to Program - Late Objects Version, 7th. Ed., P. Deitel and H. Deitel, Pearson, 2011 (歐亞代理) 
參考書目
程式開發工具 Development Tools
1. Microsoft Visual Studio (2005, 2008, or 2010)
Download from NTU CC
2. Microsoft free Visual C++ Express Ed.
http://www.microsoft.com/express/
3. Bloodshed Dev C++
http://www.bloodshed.net/devcpp.html
4. GNU C++
http://www.gcc.gnu.ord/install/binaries.html/
 
評量方式
(僅供參考)
   
課程進度
週次
日期
單元主題
第1週
02.23  Introduction

Download & Install
a. Anydesk
b. Dev C++ or other compilers

Chapter 1 Introduction to Computers
Chapter 2 Introduction to C++ Programming

TIOBE Index for February 2021
https://www.tiobe.com/tiobe-index/

計算機概論
https://www.csie.ntu.edu.tw/~kmchao/bcc21spr/
計算機簡介
https://www.csie.ntu.edu.tw/~kmchao/bcc21spr/ch01.ppt (Updated: 03.02)
計算機組織
https://www.csie.ntu.edu.tw/~kmchao/bcc21spr/ch03.ppt (Updated: 03.02)

https://en.wikipedia.org/wiki/Moore%27s_law#/media/File:Moore's_Law_Transistor_Count_1970-2020.png
https://www.karlrupp.net/2018/02/42-years-of-microprocessor-trend-data/

Boston Dynamics
https://www.youtube.com/watch?v=y3RIHnK0_NE
https://www.youtube.com/watch?v=fn3KWM1kuAw 
第2週
03.02  Chapter 2 Introduction to C++ Programming 
第3週
03.09  Chapter 3 Control Statements: Part I 
第4週
03.16  Chapter 3 Control Statements: Part I

數位資料表示法
https://www.csie.ntu.edu.tw/~kmchao/bcc21spr/ch02.ppt

Chapter 4 Control Statements: Part II


上機小考 
第5週
03.23  Chapter 4 Control Statements: Part II

筆試小考 (範圍: 開學到 03.16的進度包含數位資料表示法、計算機組織及計算機簡介) 
第6週
03.30  Chapter 5 Functions and an Introduction to Recursion 
第7週
04.06  Chapter 5 Functions and an Introduction to Recursion


http://math.ntnu.edu.tw/~min/Fortran/mid_90_problem.html 
第7週
04.06  溫書假 
第8週
04/13  Chapter 5 Functions and an Introduction to Recursion


上機小考 
第9週
04.20  Chapter 5 Functions and an Introduction to Recursion

Tower of Hanoi

上機小考 
第10週
04.27  期中考

範圍: 到 04.20 的上課進度 
第11週
05.04  Chapter 6 Arrays and Vectors 
第12週
05.11  Chapter 6 Arrays and Vectors 
第13週
05.18  複習之前進度 
第14週
05.25  Chapter 6 Arrays and Vectors 
第15週
06.01  Chapter 7 Pointers 
第16週
06.08  Chapter 7 Pointers

Dynamic Array:
C++ style
http://www.cplusplus.com/doc/tutorial/dynamic/
C style
http://www.cplusplus.com/reference/cstdlib/malloc/
 
第17週
6.15  Chapter 8 Sequential-Access Files
Chapter 9 Classes 
第18週
06.22  期末考  
第20週
  PPT Chapter 22-27 
第22週
 

Chapter 9 Classes